<?php

namespace common\models\cms;

use Yii;
use common\helpers\Url;

/**
 * This is the model class for table "{{%cms_article_video}}".
 *
 * @property int $id
 * @property int $article_id 文章ID
 * @property string $path 视频地址
 * @property int $duration 视频时长
 * @property int $size 视频大小
 * @property int $le_id 乐视视频ID
 * @property string $le_unique 乐视视频标识码
 */
class CmsArticleVideo extends \common\db\ActiveRecord {

    /**
     * {@inheritdoc}
     */
    public static function tableName() {
        return '{{%cms_article_video}}';
    }

    /**
     * {@inheritdoc}
     */
    public function rules() {
        return [
            [['article_id', 'duration', 'size', 'le_id'], 'integer'],
            [['path'], 'string', 'max' => 255],
            [['le_unique'], 'string', 'max' => 32],
        ];
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels() {
        return [
            'id' => 'ID',
            'article_id' => '文章ID',
            'path' => '视频地址',
            'duration' => '视频时长',
            'size' => '视频大小',
            'le_id' => '乐视视频ID',
            'le_unique' => '乐视视频标识码',
        ];
    }

    /**
     * 格式化视频远程地址
     */
    public function getUrl() {
        return Url::attach($this->path);
    }

    /**
     * 视频封面截帧
     */
    public function getThumb() {
        return $this->url . '?x-oss-process=video/snapshot,t_50000,f_jpg,w_500,h_300';
    }

    /**
     * 视频信息基础数据结构
     * {@inheritdoc}
     */
    public function fields() {
        return [
            'id',
            'article_id',
            'path' => function() {
                return $this->url;
            },
            'duration',
            'size',
            'le_id',
            'le_unique',
        ];
    }

}
